From fe633d9ef9b4c0d2f043bf2eb4c0edcdd0f9bfd3 Mon Sep 17 00:00:00 2001 From: Alexander Mikhaylenko Date: Wed, 7 Jul 2021 19:39:06 +0500 Subject: [PATCH] scrolledwindow: Don't check drag threshold when already scrolling Checkout the drag threshold only makes sense when starting a scroll, after that it just adds jumps when trying to scroll back and forth. --- gtk/gtkscrolledwindow.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 058cff7921..2df696234c 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -987,11 +987,15 @@ scrolled_window_drag_update_cb (GtkScrolledWindow *scrolled_window, GtkGesture *gesture) { GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window); + GdkEventSequence *sequence; GtkAdjustment *hadjustment; GtkAdjustment *vadjustment; double dx, dy; - if (!gtk_drag_check_threshold_double (GTK_WIDGET (scrolled_window), + sequence = gtk_gesture_single_get_current_sequence (GTK_GESTURE_SINGLE (gesture)); + + if (gtk_gesture_get_sequence_state (gesture, sequence) != GTK_EVENT_SEQUENCE_CLAIMED && + !gtk_drag_check_threshold_double (GTK_WIDGET (scrolled_window), 0, 0, offset_x, offset_y)) return; -- 2.30.2